// 判断哪些页面不需要判断登录状态
import store from './store/index'
// 页面白名单
const whiteList = [
	'/',
]


function hasPermission (url) {
	url = url.split('?')[0]
	// 在白名单中或有token，直接跳转
	if(whiteList.indexOf(url) !== -1 || store.getters.access_token) {
		return true
	}
	return false
}

uni.addInterceptor('navigateTo', {
	// 页面跳转前进行拦截, invoke根据返回值进行判断是否继续执行跳转
	invoke (e) {
		// 解决页面重复跳转问题
		let pages = getCurrentPages()
		if(!pages.length){
			return true
		}
		let nowPage = pages[pages.length - 1]
		if(e.url.indexOf(nowPage.route) !== -1) {
			return false
		}
		
		//#ifdef APP-PLUS
		if(!hasPermission(e.url)){
			// 拉起一键登录  false不是switchTab跳转，true 是switchTab跳转
			oneClickLogin(false)
			return false
		}
		//#endif
		
		//#ifdef MP
		if(!hasPermission(e.url)){
			uni.navigateTo({
				url: '/pages/login/index'
			})
			return false
		}
		//#endif
		
		return true
	}
})
